10 PRINTCHR$(147) 20 INPUT"ENTER FORMULA";F$ 30 IFF$="STOP"THENSTOP 40 A=0 50 F$=F$+ " ":P$=F$:ID=9:DN=0 60 FORI=1TOLEN(P$) 65 IFMID$(P$,I,1)=" "THEN80 70 NEXT:PRINT"?INVALID FORMULA":GOTO20 80 IFI=LEN(P$)THENDN=1 90 X=I:X$=LEFT$(P$,X) 100 VA=1:V=VAL(X$) 105 IFVAL(X$)=0ANDLEFT$(X$,1)<>"0"THENVA=0 110 IFLEFT$(X$,2)="PI"THENV=3.14159265:VA=1 120 IFLEFT$(X$,1)="[255]"THENV=3.14159265:VA=1 130 IFVA=1THEN230 135 IFLEFT$(X$,1)="'"THENPRINT"ST = ";A:GOTO310 140 ID$=LEFT$(X$,1):ID=0 150 IFID$="+"THENID=1 160 IFID$="-"THENID=2 170 IFID$="*"THENID=3 180 IFID$="/"THENID=4 190 IFID$="^"THENID=5 195 IF(ID>0)AND(ID<90)ANDMID$(X$,2,1)<>" "THENPRINT"?ERROR":GOTO20 200 IFID$=" "THEN310 203 IFA=0THEN210 204 IFID$="@"THENAM=VAL(MID$(X$,2,1)):AM=-AM:GOTO207 205 IF ID$<>";"THEN210 206 AM=VAL(MID$(X$,2,1)):IFA=0THEN210 207 A=INT(A*(10^AM)+.5):A=A/(10^AM):ID=0:GOTO310 210 IFID=0THENPRINT"?BAD SYMBOL":GOTO20 220 GOTO310 230 IFID=1THENA=A+V 240 IFID=9THENA=V:ID=0:GOTO310 250 IFID=0THENPRINT"?ERROR":(null)T20 260 IFID=2THENA=A-V 270 IFID=3THENA=A*V 280 IFID=5THENA=A^V 290 IFID=4ANDV=0THENPRINT"?DIV BY ZERO":GOTO20 300 IFID=4THENA=A/V 310 IFDN=1THEN330 320 P$=RIGHT$(P$,(LEN(P$)-LEN(X$))):GOTO60 330 PRINT"RESULT = ";A:A=0:GOTO20 1000 REM NOTICE THIS PROGRAM IS STILL SUBJECT TO FLOATING POINT 1010 REM ROUND OFF ERRORS AND IS ONLY AS ACCURATE HAS BASIC PERMITS